<!DOCTYPE html>
<html lang="en">

  <head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>其它类型转换为数值类型</title>
  </head>

  <body>

  </body>
  <script>
    /* 
3.其它类型转换为数值
    3.1 使用Number()函数
        1.字符串->数字
          1.1 如果是纯数字型字符串，会转换为数字
          1.2 如果是不是数字型字符串，则会显示NaN
          1.3 如果字符串是一个空串或者是一个全是空格的字符串，则转换为0
        2.布尔->数字
          2.1 true返回1；
          2.2 false返回0；
        3.null->数字：返回0
        4.undifined->数字：返回NaN
  3.2 使用专门的方式对付字符串
        1.parseInt()和parseFloat()：
          1.1 可以将一个字符串中的有效的整数内容去出来，然后转换为Number
          1.2 如果对非String使用parseInt()或parseFloat()，它会先将其转换为String然后在操作
  */
    var str = "abc";
    var num1 = Number(str)
    console.log(num1, typeof (num1)); //NaN number

    var str2 = "123";
    var num3 = Number(str3);
    console.log(num3, typeof (num3)); //123 number

    var str3 = "123abc";
    var num4 = Number(str3);
    console.log(num4, typeof (num4)); //NaN number

    var str4 = '';
    var num5 = Number(str4);
    console.log(num5, typeof (num5)); //0 number

    var bool = true;
    var num2 = Number(bool);
    console.log(num2, typeof (num2)); //1 number

    var strNull = null;
    var num6 = Number(strNull);
    console.log(num6, typeof (num6)); //0  number

    var strUndefined = undefined;
    var num7 = Number(strUndefined);
    console.log(num7, typeof (num7)); //NaN number
  </script>

</html>